package com.warren.beans.factory;

import com.warren.beans.factory.ListableBeanFactory;
import com.warren.beans.factory.config.AutowireCapableBeanFactory;
import com.warren.error.BeansException;
import com.warren.beans.factory.config.BeanDefinition;
import com.warren.beans.factory.config.BeanPostProcessor;
import com.warren.beans.factory.config.ConfigurableBeanFactory;

/**
 * @author warren
 * @create 2021-08-19 20:15
 * @Description  配置工厂列表
 */
public interface ConfigurableListableBeanFactory  extends ListableBeanFactory, AutowireCapableBeanFactory, ConfigurableBeanFactory {
    BeanDefinition getBeanDefinition(String beanName) throws BeansException;

    void preInstantiateSingletons() throws BeansException;


    //void addBeanPostProcessor(BeanPostProcessor beanPostProcessor);
}
